package strategy.duck;

import strategy.duck.comportamento.ComportamentoGrasnar;
import strategy.duck.comportamento.ComportamentoVoar;

public abstract class Pato {
	
	protected ComportamentoGrasnar comportamentoGrasnar;
	protected ComportamentoVoar comportamentoVoar;
	
	public Pato(){
	}
	
	public abstract void mostrar();
	
	public void executarVoo(){
		System.out.println(comportamentoVoar.voar());
	}
	
	public void executarGrasnar(){
		System.out.println(comportamentoGrasnar.grasnar());
	}
	
	public void nadar(){
		System.out.println("Todos os patos sabem nadar!!!!!");
	}

	public ComportamentoGrasnar getComportamentoGrasnar() {
		return comportamentoGrasnar;
	}

	public void setComportamentoGrasnar(ComportamentoGrasnar comportamentoGrasnar) {
		this.comportamentoGrasnar = comportamentoGrasnar;
	}

	public ComportamentoVoar getComportamentoVoar() {
		return comportamentoVoar;
	}

	public void setComportamentoVoar(ComportamentoVoar comportamentoVoar) {
		this.comportamentoVoar = comportamentoVoar;
	}


}
